package org.example.redis.lock;

import java.util.List;
import java.util.concurrent.TimeUnit;
import java.util.function.Supplier;

/**
 * @program: rabbitmq-study
 * @description:
 * @Version V1.0.0
 * @author: dazhi
 * @create: 2021-02-07 15:20
 **/
public interface RedisLockClient {

    void unLock(String lockName,LockType lockType);

    <T> T lock(String lockName, LockType lockType, long waitTime, long leaseTime, TimeUnit timeUnit, Supplier<T> supplier);
}
